home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1996 February
/
EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso
/
earcd
/
comm2
/
toymen20.lha
/
ToyMenu
/
Docs
/
ToyMenu.doc
< prev
next >
Wrap
Text File
|
1995-12-16
|
16KB
|
456 lines
__ __ ________
_ ___/ \___ _______ ___/ \___ (d!) _ \ /____
\\__ __/_______\_ /_\__ __/_________ \ \ _/ /_____
/ ¬\ _ / / ¬\/ ¬\ _ /______/_ ` / ,__/___ _
/ · / /____, \_ · / / _ /\_____/\___ .://
· \_____/ /______/ \_____/\ / / _ _ / /
\_____/ \______/
·)^» ToyMenu v2.O «^(·
Conference Selector for DayDream v1.17
Programmed by Joo/ToyTools with ASM-One v1.28 by T.F.A.
Introduction & Features
Installation Help
Configuration
Prompt & Menu Usage
Previews & Examples
ToyMenu with ToyBytes
The Credits
Contacting ToyTools
Introduction
I started coding this because there weren't any good joinconf doors for
DayDream and /X joiners couldn't use DayDream's abilities. There wasn't
much left for configuring in those /X doors either.
So, ToyMenu is a replacement (or alternative) to DayDream's "J", "<" and
">" commands.
If no parameters are given to the "J" command, ToyMenu creates a listing
depending on your config. Then you use cursor keys, numbers or letters
to move in the menu. Pressing enter joins the conference.
You can also replace the "<" and ">" commands. This will add some extra
abilities to those commands. See Online usage Usage}.
Some features:
o Very configurable.
o Cursor key conference selecting.
o You can take full advantage of DayDream's special control codes in the
background display.
o Able to use two listings in the menu.
o Able to color differently or hide those conferences which the user has
no access to.
o The menu selector can be changed to whatever you like.
You can create moving lightbars etc.
o You can use number or letters to display the conference numbers in
the menu. Letters can be used also in the commandline. Or if you want,
no numbers but only the name can be displayed in the menu.
o Able to use hotkeys when selecting from the menu.
o Replaces also the "<" and ">" commands and adds some new functions
to them.
o Able to skip "you have no access to this conference" text when using
direct commands (e.g. "J 2" or "<"), instead displays the menu!
o Has inactivity timeout.
o The conference names are read from Conferences.DAT but if you want to use
different names you can use a namelist which can replace all the names or
just some of them.
o Able to use relative conferences:
If your conference access is "__XX____..." (you have access to conferences
3 and 4), you have to use "J 3" or "J 4" to join them directly.
But if you use relative conferences, you can use "J 1" or "J 2".
o Is 100% assembly language and can be made resident.
Installation
I created a small script ("Install.script") which installs the files to
correct directories. Use it by double clicking it from Workbench.
You still need to add ToyMenu to DayDream's external commands.
(ToyMenu doesn't use any hardcoded paths, so if you want, you can put the
files anywhere you like. Just remember to use correct paths in DayDream's
config and in the DreamUtils environment variable.)
1. Copy "ToyMenu" to "Doors:". (DayDream:Doors/)
2. Copy "ToyMenu.guide" to "DayDream:Docs/"
3. Copy "ToyMenu.CFG" to your DayDream config directory. Usually this is
"DayDream:Configs/". ToyMenu reads the config path from the environment
variable called "DreamUtils" (ENV:DreamUtils).
4. Copy "ToyMenu.GFX" to "DayDream:Display/[displaymode]/" directories.
- Now you are able to test it. Run DayDream and use the "$" command:
Enter door command line to run: Doors:ToyMenu %N
5. If you like it, add ToyMenu to DayDream's external commands:
DOOR_COMMAND.. J
DOOR_TYPE..... 1
DOOR_SECURITY. 5
DOOR_EXECUTE.. Doors:ToyMenu %N
+
DOOR_COMMAND.. <
DOOR_TYPE..... 1
DOOR_SECURITY. 5
DOOR_EXECUTE.. Doors:ToyMenu %N
+
DOOR_COMMAND.. >
DOOR_TYPE..... 1
DOOR_SECURITY. 5
DOOR_EXECUTE.. Doors:ToyMenu %N
- You can make ToyMenu resident:
Resident Doors:ToyMenu PURE
Configuration
ToyMenu doesn't display any hardcoded copyright texts but please credit me
somewhere in the background display...
The background image(s), "ToyMenu.GFX" and/or "ToyMenu.TXT", should be
in your displaymode directories ("DayDream:Display/ISO/" etc.).
You can use DayDream's special control codes to create random displays,
display the user's name, local time etc.
You can also create own displays for different security levels.
E.g. "ToyMenu.210.GFX" to security level 210.
The configuration file's name is "ToyMenu.CFG" and it should be in the
directory where you have your other DayDream configurations.
(usually this is DayDream:Configs/")
The path is read from the environment variable "DreamUtils".
USE_TWO_ROWS
USE_LETTERS
USE_ZEROFILL
HIDE_CONFERENCES
SKIP_CONFERENCES
SKIP_JOINGRAPHICS
USE_HOTKEYS
RELATIVE_CONFS
ROW_1_X
ROW_1_Y
ROW_2_X
ROW_2_Y
SPACE_CHARACTERS
TIMEOUT_SECONDS
CURSOR_STRING
SELECTOR_ACCESS
SELECTOR_NOACCESS
SELECTOR_CLEANER
NUMBER_COLOR_1
NUMBER_COLOR_2
CONFERENCE_COLOR_1
CONFERENCE_COLOR_2
COMMANDROW_TEXT
CONFNAMES_FILE
USE_TWO_ROWS....... [Y/N]
If you set USE_TWO_ROWS to Y, ToyMenu will create two rows in the menu.
The coordinatess of these rows can be controlled with the coordinate
options.
USE_LETTERS........ [Y/N/-]
If you set USE_LETTERS to Y, ToyMenu will use letters instead of numbers
in the menu to display the conference numbers. If this options is "-",
nothing will be used to display the conference numbers.
Letters don't correspond the real conference numbers! They are relative to
the current user (e.g. letters always start with an "a" and continues
forward in order although there were hided conferences).
Using letters in direct mode, "J n", works only with 26 first conferences.
This is because DayDream converts the door parameters to uppercase.
You can still use numbers in the commandline even if USE_LETTERS=Y.
Example:
USE_LETTERS........ N -The user has no access to conf. 4 and the
01 New Users HIDE_CONFERENCES option is Y.
02 Amiga Trade or...
03 Modules -There is no 4th conference.
05 DayDream Doors
USE_LETTERS........ Y
a New Users -Note: a,b,c,d not a,b,c,e!
b Amiga Trade
c Modules
d DayDream Doors
USE_ZEROFILL....... [Y/N]
If USE_ZEROFILL is Y, the empty spaces in conference numbers will be
padded with zeros, e.g. "1" becomes "01". If you have more than 9
conferences, zerofill will be automatically used.
If this is Y, you have to press two numbers to change the conference.
HIDE_CONFERENCES... [Y/N]
If HIDE_CONFERENCES is Y, all conferences which the user has no access to,
will be hided (not displayed in the menu at all).
I suggest that you set the USE_LETTERS or RELATIVE_CONFS option to Y when
hiding conferences!
SKIP_CONFERENCES... [Y/N]
This option is for straight commandline usage only.
E.g. the user types "J 2" and he has no access to conference 2.
- If SKIP_CONFERENCES=N, "You have no access to that conference!" text
will be shown.
- If SKIP_CONFERENCES=Y, the menu will be shown instead.
Also affects the "<" and ">" commands so that if you are in the last conf
and use ">", the menu will be shown (or if you are in the first conf and
use "<"). Normally you can cycle confs with the "<" and ">" commands.
SKIP_JOINGRAPHICS.. [Y/N]
If this is Y, "JoinConference.GFX" won't be shown when using direct
joining ("J 3", "<" etc.). When selecting from the menu, the graphics
will always be shown. This can be useful because first time users on your
board usually use the menu, but old users prefer fast commandline usage
And it's not fun to watch too long ANSI anims everytime you join your
favourite conference.
USE_HOTKEYS........ [Y/N]
If this is Y, hotkeys will be used for conference selecting.
If this is N, the user has to press enter to select a conference.
RELATIVE_CONFS..... [Y/N]
Examples:
If conference access is "__XX____..." (the user has access to conferences
3 and 4), he has to use "J 3" or "J 4" to join them directly.
But if RELATIVE_CONFS is Y, he can use "J 1" or "J 2".
Example:
RELATIVE_CONFS..... N -The user has no access to conf. 4 and the
01 New Users HIDE_CONFERENCES option is Y.
02 Amiga Trade or...
03 Modules -There is no 4th conference.
05 DayDream Doors
RELATIVE_CONFS..... Y
01 New Users -Note: 01,02,03,04 not 01,02,03,05!
02 Amiga Trade
03 Modules
04 DayDream Doors
If you use this option, HIDE_CONFERENCES will automatically be "Y".
ROW_1_X............ [number]
ROW_1_Y............ [number]
ROW_2_X............ [number]
ROW_2_Y............ [number]
These contain the coordinates of the menu rows.
SPACE_CHARACTERS... [number]
How many characters between the conference number (or letter) and the
conference name in the menu listings.
TIMEOUT_SECONDS.... [number]
Quit the menu after n seconds of inactivity. Put "-" here if you don't
want timeout. It's good to have a timeout, however, because DayDream's
internal timeout doesn't work in external doors.
CURSOR_STRING...... <ANSI-string>
This string controls the place where the the cursor should be put.
Use ANSI codes to move and color it.
Example: (Escapes removed)
CURSOR_STRING...... [23;66H[32m
SELECTOR_ACCESS.... <string>
SELECTOR_NOACCESS.. <string>
SELECTOR_CLEANER... <string>
In ToyMenu, selector means the image that moves in the menu.
With these options, you can design your own selector.
SELECTOR_ACCESS is the menu selector image for conferences which the user
has access to.
SELECTOR_NOACCESS is the selector for no-access conferences.
SELECTOR_CLEANER is the menu selector "cleaner". It will be printed on
the old menu location. Remember to "jump" over the number (use ANSI
codes for this) etc.
You can use conference names or letters in the selectors strings.
E.g. if you want to color the number or name where the selector is,
you have to use this. You can create a moving "light bar" etc.
o Put "%N" in the string for number or letter.
o Put "%C" in the string for conference name.
o Put "%nC" in the string for conference name where n is the field
width. (e.g. "%20C")
Example: (Escapes removed)
SELECTOR_ACCESS.... [1D[44;37m %N %15C [0m
SELECTOR_NOACCESS.. [1D[44;37m %N %15C [0m
SELECTOR_CLEANER... [1D[0m %N %15C [0m
NUMBER_COLOR_1..... <ANSI-string>
NUMBER_COLOR_2..... <ANSI-string>
NUMBER_COLOR_1 is the color for the number or letter of the conference
which the user has access to.
NUMBER_COLOR_2 is the color for the number or letter of the conference
which the user has no access to.
CONFERENCE_COLOR_1. <ANSI-string>
CONFERENCE_COLOR_2. <ANSI-string>
CONFERENCE_COLOR_1 is the color for the conference which the user has
access to.
CONFERENCE_COLOR_2 is the color for the conference which the user has
no access to.
COMMANDROW_TEXT.... <string>
This is the text for the commandrow. Remember to use ANSI codes to place
the text in right place.
If you want to use ranges, e.g. "01-05" or "a-e", you have to put
"%N" in your commandrow text.
Example: (Escapes removed)
COMMANDROW_TEXT.... [23;33HSelect conference (%N-%N, Q to QUIT):
CONFNAMES_FILE..... [-/<filename>]
This file contains your own names for the conferences.
If this is "-", names from Conferences.DAT will be used.
Every line in the file corresponds one name. Remember to put a linefeed
after each name! You don't have to write own names for every conference!
You can use ANSI commands in these names.
Example:
-----cut here-----------------------------------------------cut here-----
Validation Zone
DayDreaming
ToyTools
-----cut here-----------------------------------------------cut here-----
Custom name for the 1st, 3rd and 4th conference but for the 2nd conference
the name from Conferences.DAT will be used.
Prompt & Menu Usage
A simple "J" command shows the menu.
- If there's a number or letter behind it, access will be tested.
- If no access and SKIP_CONFERENCES=N, "You have no access..." text will
be displayed.
- If no access and SKIP_CONFERENCES=Y, ToyMenu will show the menu.
- If access is ok, conference will be joined. If SKIP_JOINGRAPHICS=Y,
no "JoinConference.GFX" won't be shown.
MENU USAGE
o Use CURSOR KEYS, NUMBERS or LETTERS to move in the menu.
(depending on your config)
o Press ENTER to select a conference.
(if nothing happens, the user has no access to that conference)
o Press ESC (twice) or Q to quit the menu.
(or CTRL+Q when using letters mode)
COMMANDLINE USAGE
o Use "J n" to join specific conference. E.g. "J 4" or "J d".
Note! If the letters option is "Y", you can use "J a" or "J b".
Because DayDream converts the parameters to uppercase, ToyMenu can
handle only characters a to z (enough for 26 conferences).
o Use "<" to join previous conference.
o Use "< n" to jump n conferences backwards.
o Use "< 0" to join the first conference.
o Use ">" to join next conference.
o Use "> n" to jump n conferences forward.
o Use "> 0" to join the last conference.
You can cycle confs with the "<" and ">" commands. E.g. if you use "<" in
the first conf, you'll end up joining the last conf and vice versa.
(this doesn't work if SKIP_CONFERENCES=Y, instead it displays the menu)
The Credits
hYDRA/iNSANE Thanks for fixing the FetchKey() bug in DayDre... uh..
I mean thanks for avoiding the bug in AmigaOS.
(I never ever believed that there would still exist bugs in
DayDream when I was trying to find that "seglist invalid"
memory bug in ToyMenu =^) (Hi Allah)
dUAL/iNSANE Thanks for the ToyTools & other logos you made.
I also robbed your "sentby"-design for my tools, hehe.
zEUS/mST^sE! Thanks for the design you made.
(Check out ToyMenu.2.IFF)
hIJACK/Arclite Thanks for the conferences logo.
(the one in the default display)
... to contact ToyTools, you can call my board ...
_ _ _ __ _ _ __ _ _ _
\\___ ____ __ ___ ___ ____ ____ ____ __ __ . ___ ____ ____ ___//
\_ \ /·(_/_·\__'·\ '·\__/·\ /·\__/·\ | /·|·\__'·\__/·\ / _/
_ _ _¦__ _ _ __¦_ _ _
\\_ daydreaming on a123O/5Omhz/1Omb/2.1gb/v34/hydra _//
- - ---+- amiga wares · programming · guitar · toytools -+--- - -
¦:. .:¦
`----- - - - - --> +358-72-5512972 <-- - - - - -----'
... or send e-mail to joo@northstar.imagew.fi ...